[Feat] Ubuntu 26.04 support - #1769
mylinuxforwork merged 4 commits into
Conversation
|
I am looking forward testing this. |
I can't wait to hear feedback and what changes are possibly needed. However, which repo do I need to edit to make the online command detect Ubuntu? |
4b92931 to
d9e73c6
Compare
|
Updated my branch to the latest main |
d9e73c6 to
e66b031
Compare
|
@mylinuxforwork You will need the installer script, which is https://github.com/solidus1983/dotfiles/blob/test/ubuntu-26-04-vm-install/install-ubuntu.sh if you want to test. I have also rebased from main again. |
|
My laptop died so awaiting for engineer to come out to replace main board after I will rebase again. |
|
Good look with your Laptop. No stress. I have just released ML4W OS 2.15 and Ubuntu support would be next ;-) |
e66b031 to
b795983
Compare
|
Right i have now rebased my branches with the latest changes, and my laptop is now working again! |
b795983 to
2e2f0a4
Compare
|
Rebased on the latest main. |
|
Testing some changes to Ubuntu scripts during a code cleanup. |
3d9601f to
8b9aac1
Compare
|
@mylinuxforwork I am now ready for code review. Should be done now, and will keep the rebases up to date from this point forward. Awaiting your feedback, and will make changes where requested to do so. |
234c925 to
396eb72
Compare
2294bcb to
8215656
Compare
|
Currently away for Training, will rebase with the main branch once I am able to do so. |
8215656 to
b1ab6d7
Compare
|
A Clean install of Ubuntu and running the updated script show issues, so I am now trying to resolve them. Update: Seems the issue is with VirtualBox, running the same script without changes on bare-metal (ThinkPad T440p) hardware worked fine |
314344d to
8299eef
Compare
|
@mylinuxforwork Will do another rebase tonight or tomorrow, as I see you are adding new repos that will change how my scripts work. |
8299eef to
7f6a6e9
Compare
Virtualbox doesn’t work well. You should use qemu with virtmanager and enable 3D acceleration. You can see it in many of my videos like in the latest cachyos video. |
I have moved the power menu into an own repo and added the installer to the post.sh The rest should work as before. |
|
I am planning the merge of your commits on the upcoming weekened into the Rolling Release. Then I can support you with testing. |
|
@solidus1983 Could install elephant and walker successfully with the following script: https://github.com/mylinuxforwork/ml4w-walker |
Thanks for heads up, currently working on the nl4w-walker in my testing branch, but seeing the same issue with elephant as i did with my script till i placed some deps in. I'll figure it out and get it working. Edit: |
|
Just send me a note as soon as you think that I can merge it into the Rolling Release. Ubuntu VM is already up and running for testing. |
|
@mylinuxforwork Will do just testing now on the QEMU as you suggested, once done, I will then merge changes from testing to feature branch and give you the nod! |
d2e51a3 to
1b4decb
Compare
|
@mylinuxforwork The work is now ready, and the installation script is still in the testing branch. Any scripts that still perform checks on the OS that go to |
c8b2d07 to
bb6a32d
Compare
|
Fixing some bugs quickly |
abaf60e to
dcfebd8
Compare
Add preflight, post and package list scripts for Ubuntu, following the same layout as Arch, Fedora and openSUSE. preflight-ubuntu.sh enables universe and restricted and adds the repos Ubuntu doesn't ship: the cppiber Hyprland PPA, the danklinux PPA for cliphist, the Charm repo for gum, and the Mozilla Team PPA, pinned so that firefox installs as a .deb rather than the snap. It also removes swww if it's installed. post-ubuntu.sh: - Builds quickshell, awww, walker, elephant and nwg-displays from source, and installs matugen with cargo. None of these are packaged for Ubuntu. - Installs Quickshell Overview, ML4W Dock and ML4W Dotfiles Settings. The settings app's setup.sh only knows pacman, dnf and zypper, so it is cloned and installed with make install instead. - Installs JetBrains Mono Nerd Font and Font Awesome 7. - Adds ConditionEnvironment drop-ins so hyprpolkitagent only runs under Hyprland and snapd-desktop-integration only under GNOME, and hides the mate-polkit autostart entry. - Masks the waybar, hypridle and hyprsunset user units, which would otherwise start alongside the copies autostart.lua launches. autostart.lua starts hyprpolkitagent.service and falls back to polkit-gnome when that unit doesn't exist. It also skips launching swaync when post-ubuntu.sh has set up D-Bus activation, because starting it both ways raced and failed with "already running!". Add a matugen template to theme the hyprpolkitagent dialog. Signed-off-by: William Rogers <hacktrix2006@gmail.com>
ml4w-walker is the new upstream installer for walker, elephant and the providers. It supports Arch, Fedora, openSUSE and Ubuntu 25.10+, so call it from post.sh and drop the cargo/go builds from post-ubuntu.sh. Walker now gets installed on every distro. Add `ml4w-walker start` to ml4w-autostart. Without it elephant is never started and walker hangs waiting for its socket. launcher.sh called ~/.config/walker/launch.sh, which upstream removed along with the rest of .config/walker, so choosing walker as the launcher did nothing. Call walker directly. Signed-off-by: William Rogers <hacktrix2006@gmail.com>
Upstream removed .config/walker, including the ml4w theme, and the matugen walker template in early August. Walker still reads themes from ~/.config/walker/themes, so restore the theme's style.css as it was and the matugen template that writes ~/.config/walker/colors.css. launcher.sh now passes -t ml4w so walker uses it. Signed-off-by: William Rogers <hacktrix2006@gmail.com>
Ubuntu's grim package is built without JPEG support. The default screenshot filename ends in .jpg, so screenshot.sh fails with "jpeg support disabled" and nothing gets saved. Build grim 1.5.0 with -Djpeg=enabled and install it to /usr/local/bin, which comes before the packaged grim on PATH. The step is skipped when /usr/local/bin/grim already links libjpeg. Tested by building 1.5.0 with the same flags and taking a JPEG screenshot with it. The post-ubuntu.sh step itself hasn't been run yet. Signed-off-by: William Rogers <hacktrix2006@gmail.com>
b637930 to
75b702b
Compare
|
Right, I am now finished with this PR. @mylinuxforwork, happy testing. |
|
Great. Thank you. Will start testing soon. |
Description
Adds support for installing ML4W on Ubuntu 26.04.
Changes
Context
There's currently no official way to install ML4W on Ubuntu. This adds the Ubuntu preflight, post and package scripts, plus a few fixes to shared files that came up while testing.
Ubuntu setup (new files)
setup/dependencies/packages-ubuntu,setup/preflight-ubuntu.shandsetup/post-ubuntu.sh, following the same layout as Arch/Fedora/openSUSE.preflight-ubuntu.shenables universe and restricted and adds the repos Ubuntu doesn't ship: the cppiber Hyprland PPA, the danklinux PPA (cliphist), the Charm repo (gum), and the Mozilla Team PPA, pinned sofirefoxinstalls as a .deb instead of the snap. It also removes swww if it's installed.post-ubuntu.shbuilds quickshell, awww, nwg-displays and grim from source and installs matugen with cargo. grim is rebuilt because Ubuntu's package has no JPEG support, which breaks the default.jpgscreenshot filename.make install, because itssetup.shonly detects pacman/dnf/zypper and exits on Ubuntu.fonts-font-awesomepackage is 4.7 and doesn't provide the "Font Awesome 7" family waybar uses.run_quiet/LOG_FILE, which the installer provides (same as the other distros). curl downloads retry on network errors.Shared changes (all distros)
autostart.lua: startshyprpolkitagent.serviceand falls back to polkit-gnome when that unit doesn't exist. Skips launching swaync when post-ubuntu.sh has set up D-Bus activation, because starting it both ways raced and failed with "already running!".post.sh: installs walker and elephant through ml4w-walker, which supports Arch, Fedora, openSUSE and Ubuntu 25.10+.ml4w-autostartnow runsml4w-walker start. Without it elephant never starts and walker hangs.launcher.sh: fixes the walker launcher. It called~/.config/walker/launch.sh, which was removed upstream on 4 August, so choosing walker did nothing. It now runswalker -t ml4w..config/walker/themes/ml4w/style.css) and its matugen template, both removed upstream in early August, so walker matches the system colours.hyprtoolkit-colors.conf) to theme the hyprpolkitagent dialog.How Has This Been Tested?
Tested in a VM while building, then a clean install on bare metal.
The grim build was added afterwards. I built grim 1.5.0 with the same meson flags and took a JPEG screenshot with it, but haven't run the full install with that step yet.
The changes to autostart.lua, post.sh, launcher.sh and ml4w-autostart affect every distro but have only been tested on Ubuntu.
Checklist
Screenshots
Additional Notes
The installer (ml4w-dotfiles-installer) will need a separate PR to recognise Ubuntu and run these scripts.